package com.lanou3g.hw0416;

import java.util.ArrayList;

/**
 *
 */
/*
存放着所有的用户信息
 */

public class UserInfos {
    private ArrayList<User> users;

    // 同过 static 关键字 来让UserInfos只被加载一次
    private static UserInfos userInfos = new UserInfos();

    // 通过 static 方法 可以通过类名.方法
    // 来获取 UserInfos对象
    // 这样 UserInfos类 在整个系统中,只会被new一次
    // 即做到了 单例
    public static UserInfos getInstance() {
        return userInfos;
    }

    // 构造方法私有
    // 那么这个项目中
    // 除了自己 没有任何一个类能new出该类对象
    private UserInfos() {
        users = IOUtils.initUsers();
    }

    public ArrayList<User> getUsers() {
        return users;
    }

    // 判断用户名是否重复

    public boolean isRepeat(String username) {
        for (User user : users) {
            if (username.equals(user.getUsername())){
                return true;
            }
        }
        return false;
    }
}
